// 创建一个 axios
import axios from 'axios'
import {Message} from 'element-ui';

import APIConfig from './apiConfig'

const http = axios.create({
    baseURL: 'http://157.122.54.189:9095'
})

http.interceptors.response.use(
    res => {
        console.log('这里拦截到正常响应状态码为200的请求');
        // 如果是状态码就报错的请求, 这里无法拦截, 需要添加第二个函数作为回调
        // 如果拦截了请求或者响应, 记得要 return
        return res
    },
    err => {
        console.log('这里拦截到状态码本身出错');
        // 这里可以拦截到状态码本身出错的请求
        console.dir(err)
        Message.error(err.response.data.message || '系统错误')
    }
)

export const myrequest = function(apiName, data) {
    const {url, method} =  APIConfig[apiName]
    const options = {
        url,
        method
    }
    // 如果是 get 数据属性叫 params
    // 如果是 post 数据属性叫 data
    if (method.toUpperCase() === "GET" && data) {
        options.params = data
    }
    if(method.toUpperCase() === "POST" && data) {
        options.data = data
    }

    return http(options)
}

export default http